Open the Portico Schema site
Portico Developer Guide
EMV PDL Status Codes
Appendices > EMV PDL Status Codes

Status Code Status Code Name Message Note
00 SUCCESS

A response has been sent out successfully.

 

Request—Header error
01 INVALID MESSAGE LENGTH Message Length is invalid. If Message Length is not binary code.
02 INVALID HEADER ID Header ID [ID] is invalid.
Example: Header ID NF is invalid.
If the Header ID is not HH or NT.
03 INVALID HEADER VERSION Header Version [VERSION] is invalid. If the Header Version is not 01.
04 INVALID CORRELATION ID Invalid Correlation ID. If the Correlation ID is not binary codes.
05 INVALID RESPONSE CODE Response Code [CODE] is invalid. If the Response Code is not numeric.
06 INVALID HOST Host [HOST] is invalid. If the Host is not E, N, or V.
07 INVALID MERCHANT OR COMPANY ID Merchant/Company ID [ID] is invalid. Based on the host selected, display this error if the ID is not the correct length and data type.
08 INVALID LOCATION OR UNIT ID Location/Unit ID [ID] is invalid. Based on the host selected, display this error if the ID is not the correct length and data type.
09 INVALID TERMINAL OR DEVICE ID Terminal/Device ID [ID] is invalid. Based on the host selected, display this error if the ID is not the correct length and data type.
10 INVALID TERMINAL IDENTIFIER LENGTH The length of the terminal identifier field is invalid.

If the length of the Terminal Identifier field is not 30 bytes.

Request—Body error
11 EMPTY MESSAGE BODY The request has no message body. If receives a request that contains only the header (unless this is a keep-alive request).
12 TERMINAL NOT FOUND Terminal identifiers are not provided. -OR-
The terminal record cannot be found.
For Exchange terminals, Location/Unit ID is not needed. But if it is provided, the system will log it, but won’t use it when searching for the terminal record.
13 INVALID PARAMETER TYPE Parameter Type is not provided. If the Parameter Type is space-filled.
13 INVALID PARAMETER TYPE

Parameter Type [PARM TYPE] is invalid.

Example: Parameter Type 10 is invalid.

If the provided Parameter Type is not 06 or 07.
14 INVALID TABLE-ID Table-ID is not provided. If the Table-ID is space-filled.
14 INVALID TABLE-ID Table-ID [TABLE ID] is invalid.
Example: Table-ID 90 is invalid.
If the provided Table-ID is not in 10, 30, 40, 50, 60.
15 INVALID CARD TYPE Card Type is not provided.

If the Card Type is space-filled.

15 INVALID CARD TYPE

Card Type [CARD TYPE] cannot be found.

Example: Card Type 99 cannot be found.

If the Card Type is not numeric or
cannot be found.

Card Type is host specific.
16 INVALID VERSION The Table/Parameter received is invalid. Check the data type and length.

This error shows up when the Parameter/Table version is less than the required length.

17 VERSION NOT FOUND Table Version is not provided.

If the Table Version is space-filled.

Important: Space-filled value is a valid value for Parameter Version, which means the POS is requesting the latest version of parameter version. Because of the same reason, attention needs to be paid on report logging when receiving an empty Parameter Version; the system should log the latest parameter version number in the database.

17 VERSION NOT FOUND Version [TABLE VERSION] cannot be found.

If the received Table Version cannot be found in the system.

In phase I, the system is not matching Parameter Version. In other words, even if the received Parameter Version can’t be found in the database, it will still be processed successfully.
18 INVALID BLOCK SEQUENCE Block Sequence is not provided. If the Block Sequence is space-filled.
18 INVALID BLOCK SEQUENCE Block Sequence [SEQUENCE] does not exist. If the requested Sequence ID does not exist or if it is not numeric.
18 INVALID BLOCK SEQUENCE The Block Sequence must be 00 for Table-ID 10 and confirmation.

Because 00 is supposed to be used by Table-ID 10 or confirmation only, use this error code if:

  • received 00 when is requested for Table-ID 30-60, or
  • received other than ‘00’ when requested for Table-ID 10 or confirmation.
Before sending response—Table error
50 NO TAC CODE

AID [AID] of card type [CARD TYPE] does not have matching TAC codes for the requested terminal.

Example: AID A0000000031010 of card type 02 does not have matching TAC codes for the requested terminal.

Occurs when a table has no matching TAC codes for a terminal. This happens when requesting Table-ID 40 and 50.
Other error
97 CLIENT CONNECTION LOST Lost the connection with the client. Detail: [ERROR] Example: If disconnected with payment gateway socket close.
98 DATABASE CONNECTION LOST Cannot connect to database.
Detail: [ERROR]

If cannot connect to the database. (This error won’t be logged in the database, though.)

99 SYSTEM ERROR

A system error has occurred.
Detail: [ERROR]

Any errors that don’t fall into the above categories.